#include <stdio.h>

extern int ok(int, int);
extern int not_ok(float, float);

typedef int (*ok_ptr)(int, int);

int main() {
    ok_ptr func;
    int result;

    printf("--- test ok ---\n");
    func = ok;

    printf("begin to run ok\n");
    result = func(10, 20);
    printf("end to run ok, result is %d\n\n", result);


    printf("--- test not ok ---\n");
    func = (ok_ptr)not_ok;

    printf("begin to run not ok\n");
    result = func(30, 40);
    printf("end to run not ok, result is %d\n\n", result);


    return 0;
}
